#include "mainwindow.h"
#include "ui_mainwindow.h"
#include<QVBoxLayout>

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);

    serverInfoLabel = new QLabel(this);
    clientInfoLabel = new QLabel(this);
    startServerButton = new QPushButton("Start Server", this);
    exitButton = new QPushButton("Exit", this);

    connect(startServerButton, &QPushButton::clicked, this, &MainWindow::onStartServerButtonClicked);
    connect(exitButton, &QPushButton::clicked, this, &MainWindow::onExitButtonClicked);

    // 将组件添加到主窗口布局中
    QVBoxLayout *layout = new QVBoxLayout();
    layout->addWidget(serverInfoLabel);
    layout->addWidget(clientInfoLabel);
    layout->addWidget(startServerButton);
    layout->addWidget(exitButton);

    QWidget *centralWidget = new QWidget(this);
    centralWidget->setLayout(layout);
    setCentralWidget(centralWidget);
}

void MainWindow::onStartServerButtonClicked()
{
    // 启动服务器监听，获取IP地址和端口
    QString ipAddress = "192.168.0.1";  // 替换为实际的IP地址
    int port = 8080;  // 替换为实际的端口号

    // 更新服务器信息的 QLabel
    serverInfoLabel->setText(QString("Server: IP:%1, Port:%2").arg(ipAddress).arg(port));

    // 连接客户端请求

    // 发送消息给客户端

    // 更新客户端信息的 QLabel
    QString clientIpAddress = "192.168.0.2";  // 替换为实际的客户端IP地址
    int clientPort = 1234;  // 替换为实际的客户端端口号
    clientInfoLabel->setText(QString("Client: IP:%1, Port:%2").arg(clientIpAddress).arg(clientPort));

    // 断开与客户端的连接
}

void MainWindow::onExitButtonClicked()
{
    // 退出服务器端程序的逻辑

    QApplication::quit();  // 关闭应用程序
}



MainWindow::~MainWindow()
{
    delete ui;
}
